package com.maker.mcp.client.service;

import com.maker.mcp.client.bean.ChatEntity;
import org.springframework.ai.chat.model.ChatResponse;
import org.springframework.ai.document.Document;
import reactor.core.publisher.Flux;

import java.util.List;

public interface ChatService {

    public String chatTest(String prompt);

    public Flux<ChatResponse> streamChat(String prompt);

    public Flux<String> streamStrChat(String prompt);

    // 返回的是 Reactor 的 Flux<String>，逐字推送
    Flux<String> chat(String memoryId, String message);

    public void doChat(ChatEntity chatEntity);

    public void doChatRagSearch(ChatEntity chatEntity, List<Document> documentList);

    public Flux<String>  doChatRagSearchV2(ChatEntity chatEntity, List<Document> documentList);

    void doInternetSearch(ChatEntity chatEntity);
}
